define(
    function (require) {
        var BaseListModel = require('common/ListModel');
        var Data = require('./Data');
        var ExperienceData = require('../experience/Data');
        var datasource = require('er/datasource');

        var EXPERIENCE = {
            experience: function (model) {
                var experienceId = model.get('experienceId');
                var experienceData = new ExperienceData('experience');
                return experienceData.findById(experienceId).thenGetProperty('data');
            }
        }

        function ListModel() {
            BaseListModel.apply(this, arguments);
            this.addData(new Data('ticket'));
            this.putDatasource(EXPERIENCE);
        }

        ListModel.prototype.getQuery = function () {
            return {
                experienceId: this.get('experienceId')
            };
        };

        require('er/util').inherits(ListModel, BaseListModel);
        return ListModel;
    }
);
